Machine-to-machine or M2M networks commonly include a number of M2M applications running on any number of devices and/or application servers, which are communicatively interconnected and form an M2M domain. There may be a large plurality of devices operating within the network and there may be a variety of device types. For example, smart metering or monitoring networks may include geographically diverse sets of smart water or electric meters, M2M-enabled vending machines, etc.
The European Telecommunications Standards Institute or ETSI provides a number of reference standards for M2M networks and their operation. For an overview of broad architectural and functional aspects, the interested reader is referred to TS 102 690, which is titled “Machine-to-Machine communications (M2M); Functional architecture.” Examples of other references of interest includes TS 102 921, “Machine-to-Machine communications (M2M); mla, dla and mId interfaces”; TR 102 725, “Machine-to-Machine communications (M2M); Definitions”; TS 103 092, “Machine-to-Machine communications (M2M); OMA DM compatible Management Objects for ETSI M2M”; TR 102 935, “Machine-to-Machine communications (M2M); Applicability of M2M architecture to Smart Grid Networks; Impact of Smart Grids on M2M platform”; and TR 102 691, “Machine-to-Machine communications (M2M); Smart Metering Use Cases”.
Within the M2M domain, so called “service capability layers” or SCLs provide a number of defined functions, for supporting communications, control and data sharing within the M2M domain. Among the various services and functions, SCLs provide for registration of M2M applications local to the SCL, authentication and authorization of SCL communications, charging records generation, storage of application data and histories, analysis and forwarding of methods and data according to defined policies, managing collections of resources and their attributes, managing subscriptions and notifications pertaining to data changes, maintaining reachability information for the M2M entities associated with data, collections, and registrations at the SCL, support of information groupings for M2M gateways, M2M devices and M2M applications, along with configuration management, fault management, etc. SCLs also may support interworking with non-ETSI compliant devices and gateways and may support interworking using Core Network, CN, services provided by a Public Land Mobile Network, PLMN, operator, for M2M devices and applications that access the M2M network through a cellular or other such wireless access network.
Consider, for example, the registration of an M2M application—hereafter the “M2M” designation shall be assumed without explicit use—with an SCL. Depending on where the application resides, the SCL may be at the device level, the gateway level, or the network level. Correspondingly, device-level SCLs are referred to as “D-SCLs,” gateway-level SCLs are referred to as “G-SCLs,” and network-level SCLs are referred to as “N-SCLs.” According to defined hierarchy, there may be many D-SCLs and/or G-SCLs within a given M2M network, but only one N-SCL.
In any case, any instance of an application that registers with its local SCL must be uniquely identifiable to the SCL and, more broadly, to other entities within the M2M network. Unfortunately, application developers as a rule do not provide for uniquely identifying individual instances of their applications. For example, all instances of a given smart metering application may use the same generic application identifier, at least with respect to a given build or version of the application. Here, an “application instance” will be understood as an executing copy of a given application. For example, a device may store an M2M application program and each time the program is launched and run represents a new instantiation of the program.
There may be a large number of devices within the network running exactly the same build or version of the smart metering application, indeed, individual devices may run multiple instances of the same application, or may invoke repeated instances of the same application on a periodic or triggered basis. Consequently, a given SCL may receive non-unique application identifiers for any number of registering application instances, thus complicating the registration process and further complicating broader identification of individual application instances within the involved M2M domain.